<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:pls="http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:ssml="http://www.w3.org/2001/10/synthesis" xmlns:svg="http://www.w3.org/2000/svg">
  <head>
    <title>Implemented SRFIs</title>
    <link rel="stylesheet" type="text/css" href="docbook-epub.css"/>
    <link rel="stylesheet" type="text/css" href="kawa.css"/>
    <script src="kawa-ebook.js" type="text/javascript"/>
    <meta name="generator" content="DocBook XSL-NS Stylesheets V1.79.1"/>
    <link rel="prev" href="Features.xhtml" title="Features"/>
    <link rel="next" href="Compatibility.xhtml" title="Compatibility with standards"/>
  </head>
  <body>
    <header/>
    <section class="sect1" title="Implemented SRFIs" epub:type="subchapter" id="Implemented-SRFIs">
      <div class="titlepage">
        <div>
          <div>
            <h2 class="title" style="clear: both">Implemented SRFIs</h2>
          </div>
        </div>
      </div>
      <p>Kawa implements the following semi-standard SRFIs
(<a class="ulink" href="http://srfi.schemers.org/" target="_top">Scheme Request for Implementation</a>):
</p>
      <div class="itemizedlist" epub:type="list">
        <ul class="itemizedlist" style="list-style-type: disc; ">
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-0/srfi-0.html" target="_top">SRFI 0</a>: Feature-based conditional expansion construct,
using <code class="literal">cond-expand</code> - see <a class="link" href="Syntax-and-conditional-compilation.xhtml" title="Syntax and conditional compilation">Syntax and conditional compilation</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-1/srfi-1.html" target="_top">SRFI 1</a>: List Library, if <code class="literal">(require 'list-lib)</code> - see <a class="link" href="Lists.xhtml#SRFI-1">SRFI-1</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-2/srfi-2.html" target="_top">SRFI 2</a>: AND-LET*: an AND with local bindings, a guarded LET* special form.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-4/srfi-4.html" target="_top">SRFI 4</a>: Homogeneous numeric vector datatypes - see <a class="link" href="Uniform-vectors.xhtml" title="Uniform vectors">Uniform vectors</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-6/srfi-6.html" target="_top">SRFI 6</a>: Basic String Ports - see <a class="link" href="Ports.xhtml" title="Ports">Ports</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-8/srfi-8.html" target="_top">SRFI 8</a>: <code class="literal">receive</code>: Binding to multiple values - see <a class="link" href="Multiple-values.xhtml" title="Multiple values">Multiple values</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-9/srfi-9.html" target="_top">SRFI 9</a>: Defining Record Types, using <code class="literal">define-record-type</code>
- see <a class="link" href="Record-types.xhtml" title="Record types">Record types</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-10/srfi-10.html" target="_top">SRFI 10</a>: <code class="literal">#,</code> external form for special named types.
This is deprecated for various reasons, including that it conflicts
with syntax-case <code class="literal">unsyntax</code>.
Better to use srfi-108 <a class="link" href="Named-quasi-literals.xhtml" title="Named quasi-literals">Named quasi-literals</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-11/srfi-11.html" target="_top">SRFI 11</a>: Syntax for receiving multiple values,
using <code class="literal">let-values</code> and <code class="literal">let*-value</code> - see <a class="link" href="Multiple-values.xhtml" title="Multiple values">Multiple values</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-13/srfi-13.html" target="_top">SRFI 13</a>: String Library.
Needs some polishing.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-14/srfi-14.html" target="_top">SRFI 14</a>: Character-set Library - see <a class="link" href="Character-sets.xhtml" title="Character sets">Character sets</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-16/srfi-16.html" target="_top">SRFI 16</a>: Syntax for procedures of variable arity,
using <a class="ulink" href="http://srfi.schemers.org/srfi-16/srfi-16.html" target="_top"><code class="literal">case-lambda</code></a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-17/srfi-17.html" target="_top">SRFI 17</a>: Generalized <code class="literal">set!</code> - see <a class="link" href="Locations.xhtml" title="Locations">Locations</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-23/srfi-23.html" target="_top">SRFI 23</a>: Error reporting mechanism, using <code class="literal">error</code> - see <a class="link" href="Exceptions.xhtml" title="Exception handling">Exceptions</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-25/srfi-25.html" target="_top">SRFI 25</a>: Multi-dimensional Array Primitives - see <a class="link" href="Arrays.xhtml" title="Multi-dimensional Arrays">Arrays</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-26/srfi-26.html" target="_top">SRFI 26</a>: Notation for Specializing Parameters without Currying - see <a class="link" href="Procedures.xhtml" title="Procedures">Procedures</a>. 
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-28/srfi-28.html" target="_top">SRFI 28</a>: Basic Format Strings - see <a class="link" href="Format.xhtml" title="Formatted Output (Common-Lisp-style)">Format</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-30/srfi-30.html" target="_top">SRFI 30</a>: Nested Multi-line Comments.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-35/srfi-35.html" target="_top">SRFI 35</a>: Conditions.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-37/srfi-37.html" target="_top">SRFI 37</a>: <a class="ulink" href="http://srfi.schemers.org/srfi-37/srfi-37.html" target="_top"><code class="literal">args-fold</code> - a program argument processor</a>, if <code class="literal">(require 'args-fold)</code>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-38/srfi-38.html" target="_top">SRFI 38</a>: External Representation for Data With Shared Structure.
The <code class="literal">read-with-shared-structure</code> is missing, but subsumed by <code class="literal">read</code>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-39/srfi-39.html" target="_top">SRFI 39</a>:
See <a class="link" href="Parameter-objects.xhtml" title="Parameter objects">Parameter objects</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-41/srfi-41.html" target="_top">SRFI 41</a>: Streams - see <a class="link" href="Streams.xhtml" title="Streams - lazy lists">Streams</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-45/srfi-45.html" target="_top">SRFI 45</a>: Primitives for Expressing Iterative Lazy Algorithms - see <a class="link" href="Lazy-evaluation.xhtml" title="Lazy evaluation">Lazy evaluation</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-60/srfi-60.html" target="_top">SRFI 60</a>: Integers as Bits. - see <a class="link" href="Logical-Number-Operations.xhtml" title="Logical Number Operations">Logical Number Operations</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-62/srfi-62.html" target="_top">SRFI 62</a>: S-expression comments.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-64/srfi-64.html" target="_top">SRFI 64</a>: A Scheme API for test suites.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-69/srfi-69.html" target="_top">SRFI 69</a>: Basic hash tables - see <a class="link" href="Hash-tables.xhtml" title="Hash tables">Hash tables</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-87/srfi-87.html" target="_top">SRFI 87</a>: <code class="literal">=&gt;</code> in <code class="literal">case</code> clauses.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-88/srfi-88.html" target="_top">SRFI 88</a>: Keyword objects - see <a class="link" href="Keywords.xhtml" title="Keywords">Keywords</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-95/srfi-95.html" target="_top">SRFI 95</a>: Sorting and Merging.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-97/srfi-97.html" target="_top">SRFI 97</a>: Names for SRFI Libraries.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-98/srfi-98.html" target="_top">SRFI 98</a>: An interface to access environment variables
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-101/srfi-101.html" target="_top">SRFI 101</a>: Purely Functional Random-Access Pairs and Lists - see <a class="link" href="Lists.xhtml#SRFI-101">SRFI-101</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-107/" target="_top">SRFI 107</a>: XML reader syntax - see <a class="link" href="XML-literals.xhtml" title="XML literals">XML literals</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-108/" target="_top">SRFI 108</a>: Named quasi-literal constructors - see <a class="link" href="Named-quasi-literals.xhtml" title="Named quasi-literals">Named quasi-literals</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-109/srfi-109.html" target="_top">SRFI-109</a>: Extended string quasi-literals - see <a class="link" href="String-literals.xhtml#string-quasi-literals">string quasi-literals</a>.
</p>
          </li>
          <li class="listitem" epub:type="list-item">
            <p><a class="ulink" href="http://srfi.schemers.org/srfi-118/srfi-118.html" target="_top">SRFI-118</a>: Simple adjustable-size strings (<code class="literal">string-append!</code> and <code class="literal">string-replace!</code>).
</p>
          </li>
        </ul>
      </div>
    </section>
    <footer>
      <div class="navfooter">
        <p>
          Up: <a accesskey="u" href="Features.xhtml">Features</a></p>
        <p>
        Next: <a accesskey="n" href="Compatibility.xhtml">Compatibility with standards</a></p>
      </div>
    </footer>
  </body>
</html>
